pp108 : Query BusObject SOAP Request

Query BusObject SOAP Request

This topic describes the Query BusObject SOAP request and the role of the GetObject method in a SOAP request.


The Query BusObject SOAP request is used to retrieve data from the database. The SOAP request is an XML structure, whereas the actual implementation of the request is through a Java method.

When the request is sent to WS-AppServer, it triggers a series of events. This is illustrated in the following figure.

Note: A custom busobject is made transient upon querying.

The GetObject Request and Response


In a client-server interaction through SOAP request and response,GetObjectis used to query an underlying database through the XQY database access layer. TheGetObjectrequest is enveloped in XML structure and contains attributes that help in better client-server communication. The response is also framed in an XML structure.
The following table provides information on the different SOAP request and response formats based on the soapresult types, in two scenarios - when there is a single BusObject and when there are multiple BusObjects.

SOAP Result

Single BusObject

Multiple BusObjects

Request

Response

Request

Response

tupleset

<InsertObject xmlns="http://schemas.cordys.com/bsf/Testing">
    <param1 xmlns="http://schemas.cordys.com/bsf/Testing">
        <Test xmlns="http://schemas.cordys.com/bsf/Testing">
            <id>PARAMETER</id>
            <name>PARAMETER</name>
        </Test>
    </param1>
</InsertObject>
<InsertObjectResponse xmlns="http://schemas.cordys.com/bsf/Testing">
    <tuple>
        <old>
            <Test xmlns="http://schemas.cordys.com/bsf/Testing">
                <id>PARAMETER</id>
                <name>PARAMETER</name>
            </Test>
        </old>
    </tuple>
</InsertObjectResponse>
<InsertObject xmlns="http://schemas.cordys.com/bsf/Testing">
    <param1 xmlns="http://schemas.cordys.com/bsf/Testing">
        <item xmlns="http://schemas.cordys.com/bsf/Testing">
            <Test xmlns="http://schemas.cordys.com/bsf/Testing">
                <id>PARAMETER</id>
                <name>PARAMETER</name>
            </Test>
        </item>
        <item xmlns="http://schemas.cordys.com/bsf/Testing">
            <Test xmlns="http://schemas.cordys.com/bsf/Testing">
                <id>PARAMETER</id>
                <name>PARAMETER</name>
            </Test>
        </item>
    </param1>
</InsertObject>
<InsertObjectResponse xmlns="http://schemas.cordys.com/bsf/Testing">
    <tuple>
        <old>
            <Test xmlns="http://schemas.cordys.com/bsf/Testing">
                <id>PARAMETER</id>
                <name>PARAMETER</name>
            </Test>
        </old>
    </tuple>
    <tuple>
        <old>
            <Test xmlns="http://schemas.cordys.com/bsf/Testing">
                <id>PARAMETER</id>
                <name>PARAMETER</name>
            </Test>
        </old>
    </tuple>
</InsertObjectResponse>

notuple

<InsertObject xmlns="http://schemas.cordys.com/bsf/Testing">
    <param1 xmlns="http://schemas.cordys.com/bsf/Testing">
        <Test xmlns="http://schemas.cordys.com/bsf/Testing">
            <id>PARAMETER</id>
            <name>PARAMETER</name>
        </Test>
    </param1>
</InsertObject>
<InsertObjectResponse xmlns="http://schemas.cordys.com/bsf/Testing">
    <return>
        <Test xmlns="http://schemas.cordys.com/bsf/Testing">
            <id>PARAMETER</id>
            <name>PARAMETER</name>
        </Test>
    </return>
</InsertObjectResponse>
<InsertObject xmlns="http://schemas.cordys.com/bsf/Testing">
    <param1 xmlns="http://schemas.cordys.com/bsf/Testing">
        <item xmlns="http://schemas.cordys.com/bsf/Testing">
            <Test xmlns="http://schemas.cordys.com/bsf/Testing">
                <id>PARAMETER</id>
                <name>PARAMETER</name>
            </Test>
        </item>
        <item xmlns="http://schemas.cordys.com/bsf/Testing">
            <Test xmlns="http://schemas.cordys.com/bsf/Testing">
                <id>PARAMETER</id>
                <name>PARAMETER</name>
            </Test>
        </item>
    </param1>
</InsertObject>
<InsertObjectResponse xmlns="http://schemas.cordys.com/bsf/Testing">
    <return>
        <item>
            <Test xmlns="http://schemas.cordys.com/bsf/Testing">
                <id>PARAMETER</id>
                <name>PARAMETER</name>
            </Test>
        </item>
        <item>
            <Test xmlns="http://schemas.cordys.com/bsf/Testing">
                <id>PARAMETER</id>
                <name>PARAMETER</name>
            </Test>
        </item>
    </return>
</InsertObjectResponse>

default

<InsertObject xmlns="http://schemas.cordys.com/bsf/Testing">
    <param1 xmlns="http://schemas.cordys.com/bsf/Testing">
        <Test xmlns="http://schemas.cordys.com/bsf/Testing">
            <id>PARAMETER</id>
            <name>PARAMETER</name>
        </Test>
    </param1>
</InsertObject>
<InsertObjectResponse xmlns="http://schemas.cordys.com/bsf/Testing">
    <tuple>
        <old>
            <Test xmlns="http://schemas.cordys.com/bsf/Testing">
                <id>PARAMETER</id>
                <name>PARAMETER</name>
            </Test>
        </old>
    </tuple>
</InsertObjectResponse>
<InsertObject xmlns="http://schemas.cordys.com/bsf/Testing">
    <param1 xmlns="http://schemas.cordys.com/bsf/Testing">
        <item xmlns="http://schemas.cordys.com/bsf/Testing">
            <Test xmlns="http://schemas.cordys.com/bsf/Testing">
                <id>PARAMETER</id>
                <name>PARAMETER</name>
            </Test>
        </item>
        <item xmlns="http://schemas.cordys.com/bsf/Testing">
            <Test xmlns="http://schemas.cordys.com/bsf/Testing">
                <id>PARAMETER</id>
                <name>PARAMETER</name>
            </Test>
        </item>
    </param1>
</InsertObject>
<InsertObjectResponse xmlns="http://schemas.cordys.com/bsf/Testing">
    <tuple>
        <old>
            <Test xmlns="http://schemas.cordys.com/bsf/Testing">
                <id>PARAMETER</id>
                <name>PARAMETER</name>
            </Test>
        </old>
    </tuple>
    <tuple>
        <old>
            <Test xmlns="http://schemas.cordys.com/bsf/Testing">
                <id>PARAMETER</id>
                <name>PARAMETER</name>
            </Test>
        </old>
    </tuple>
</InsertObjectResponse>



Note: WS-AppServer facilitates using some of the XQY extensions while executing these requests. For more information, see Leveraging XQY Extensions in WS-AppServer.

Related reference

Working with SOAP Requests and Responses
Insert BusObject SOAP Request
Delete BusObject SOAP Request
Update BusObject SOAP Request
Validate BusObject SOAP Request
Workflow of Applying Display Settings to BusObjects
Workflow of Evaluating Access on BusObjects
Workflow of Setting Multiple Values for an Attribute
QueryObject

Related information

Additional Features Provided for Querying a Database